#!/usr/bin/env pyahont3

"""
练习作业：03
3. 计算 1+2+3...+100；并打印每一步的结果，例如：1+2=3；1+2+3=6；...; [使用函数]


N=100
a=1
b=0

while a<=N:
    b=b+a
    a=a+1
    c=a=+b
    if a<=N:
        print(f"{b}+{a}={b+a}")
print(b)
    if y==0 or x==y:
        return 1
    return z(x-1,y-1)+z(x-1,y)


def z(b,c):
    d=[]
    e=b
    f=1
    while e>1:
        d.append(f)
        e-=f
        f+=1
    for i in range(1,c+1)
    print


n=101
a=1
b=0
for c in range(a,n):
    b+=c
    print(f"{b}+{c}={b+c}")
"""

# 功能和p一样，更简洁
def p2(e):
    cs=[i+1 for i in range(e)]
    total=sum(cs)
    print("+".join([f"{i}" for i in cs])+f"={total}")

# 打印s+...+e=x的每个元素
def p(s,e):
    c=s
    total=0
    while c<=e:
        total+=c
        if c>1:
            print("+",end="") #打印+，其中第一个数字不打印，end="" 可以让pring不换行
        print(c,end="") #打印每个数字
        c+=1
    print("=",end="")
    print(total) #这里没有end="",这里的print会换行

last=2
max=10
while last<=max:
    p(1,last)
    # p2(last)
    last+=1

exit(0)


n=8
a=1
b=0
c=-1
d=1
def z(a,b,c,d):
    while True:
        e=c+d
        b-=e
        c-=1
        print(f"{e}+",end="")
        if b>=1:
            return z(a,b,c,d)
        else:
            break
while True:
    b+=a
    a+=1
    c+=1
    print(z(a,b,c,d),end=" ")
    print(f"={b}")
    if c>n:
        break
